package com.aaron.client;

import com.google.gwt.user.client.rpc.IsSerializable;
import java.util.ArrayList;

/**
 * A proxy class for project information. 
 * Contains information regarding the project name, the owner,
 * and the time when the project was last updated/modified.
 * @author aaron
 *
 */
public class ProjectProxy implements IsSerializable{
	private String name;
	private String owner;
	/**
	 * This field is an ArrayList that must always contain Collaborators.
	 * 
	 * @gwt.typeArgs <com.aaron.client.Collaborator>
	 */
	private ArrayList collaborators;
	/**
	 * This field is an ArrayList that must always contain Collaborators.
	 * 
	 * @gwt.typeArgs <com.aaron.client.Collaborator>
	 */
	private ArrayList viewers;
	private String last_editor;
	private String last_update;
	public ProjectProxy(String name, String owner, ArrayList collaborators, ArrayList viewers, String last_editor, String last_update){
		this.name=name;
		this.owner=owner;
		this.collaborators=collaborators;
		this.viewers=viewers;
		this.last_editor=last_editor;
		this.last_update=last_update;
	}
	public ProjectProxy(){
		this.name="";
		this.owner="";
		this.collaborators=new ArrayList();
		this.viewers=new ArrayList();
		this.last_editor="";
		this.last_update="";
	}
	
	public String getName(){
		return this.name;
	}
	public String getOwner(){
		return this.owner;
	}
	public ArrayList getCollaborators(){
		return this.collaborators;
	}
	public ArrayList getViewers(){
		return this.viewers;
	}
	public String getLastEditor(){
		return this.last_editor;
	}
	public String getLastUpdate(){
		return this.last_update;
	}
}
